An embedded modem and especially an embedded modem having two processors, a general purpose processor that is adapted to execute lengthy programs and a digital signal processor adapted to execute concise programs. The digital signal processor is adapted to execute digital processing tasks while the general purpose processor is adapted to execute control and digital processing tasks.
Modems enable information to be transferred over telephone lines or other communication links. Information is exchanged between a call modem and an answer modem after both modems perform a handshake process. During the handshake process various parts of the modem are configured and various parameters that effect the transmission of data over the communication link are set. Various ITU-T recommendations, such as V.90, V.32, V.22bis, V.34, V.32bis and V.8 define the signals that are sent from one modem to the other and the manner in which these signals are processed.
Some recommendations, such as V.34 and V.90 of ITU-T, define a four-phased handshaking process. Phase 1 is also known as the network interaction phase. During phase 1 the modems exchange signals such as answer tones ANS and ANSam, CI, CJ, CM, JM. These signals allow the modems to determine some negotiation parameters such as which recommendations are supported by the modems and which modulation modes are available. Phase 2 is also known as the probing/ranging phase in which the modems estimate a round trip delay and decide on a symbol rate, carrier frequency, which pre-emphasis filter out of a plurality of filters to select, and set a power level. During phase 2 the modems exchange signals such as A, Axcx9c, B, Bxcx9c, L1, L2 and INFOoc. Tone A has a first frequency, such as 2400 Hz and tone Axcx9c is obtained by a 180 degree reversal of tone A. Tone B has a second frequency, such as 1200 Hz and tone Bxcx9c is obtained by a 180 degree reversal of tone B. Signals L1 and L2 are used to analyze the characteristics of the telephone channel. Phase 3 is also known as the equalizer and echo canceller training phase. During phase 3 the modems exchange signals such as S, MD, PP, TRN, J, Ŝ, and use the estimated round trip delay and negotiation parameters such as the symbol rate to train their equalizers and echo canceling filters. Phase 4 is also known as the final training phase. During phase 4 the modems exchange signals such as S, Ŝ, TRN, J, Jxe2x80x2, MP, MPxe2x80x2, E and B1 and end the training period. During each of the four phases the modems are adapted to perform error-free procedures and recovery procedures. During the handshake phases different modulations and different modem blocks are used.
After phase 4 ends the modems exchange information. Data is transmitted by a transmitter portion of the modem and received by a receiver portion of the modem. These portions are relatively complex. Generally speaking, the transmitter portion receives a digital bit stream, processes the bit stream and provides modulated analog signals, the receiver portion receives modulated analog signals, demodulates the signals and provides decoded digital signals. For example, a transmitting section of a V.32 compatible modem comprises of a scrambler, a differential encoder, a convolutional encoder, a signal mapping unit, pulse shaping filters, a phase modulation modulator, a digital to analog converter, and a low pass filter. A transmitting section of a V.34 compatible modem comprises of a scrambler, a data parsing unit, a shall mapper, a differential encoder, a MAP unit, a trellis encoder, a precoder, a non-linear encoder, and a QAM modulator.
A receiver section of a V.34 compatible modem comprises of a demodulator and a decoder, the demodulator further comprises of an echo canceller, a demodulator block and an adaptive equalizer. The decoder further comprises of a Viterbi decoder, an inverse precoder and an inverse mapper. The adaptive equalizer and the echo canceller further comprise of a finite impulse response filter, an LMS block and an error calculation block. The adaptive equalizer and the echo canceller are trained during phases 3 and 4 of the handshaking process.
Referring to FIG. 1, many prior art modems 20 are coupled to a host processor 21, such as a general purpose central processing unit (i.e.xe2x80x94CPU) via an I/O interface 22. Such a modem usually comprises of the I/O interface 22; a digital signal processor (i.e.xe2x80x94DSP) 23, for handling signal processing functions; an analog front end (i.e.xe2x80x94AFE) 24 for coupling the DSP to a data access arrangement circuit (i.e.xe2x80x94DAA) 25, to an optional speakerphone 26 and a microphone 27; DAA 25, for interfacing the mentioned above elements to a communication link 28 such as a telephone line; and memory module such as a ROM 291 and a SRAM 29 memory modules for storing information, data tables and program code. DSP 23 is used to implement various parts of the transmitter portion and the receiver portion of the modem.
DSP 32, under the control of a modem control program, handles the handshaking process and data transmission. The modem control program, and especially portions of the modem control program that handle phases 1 and 2 of the handshaking process (i.e.xe2x80x94phase 1 and phase 2 control programs) are very long. Due to the length of the modem control program it is stored in an external memory module, or in an expensive internal memory module. A disadvantage of the former solution is that the execution of the program is time consuming and a disadvantage of the latter solution is its relatively high cost. DSP are usually well suited to handle digital signal processing tasks and do not handle in such an effective manner control tasks, such as various tasks that are executed during the handshaking process. A disadvantage of both solutions is that in order to handle the handshaking process and a data mode the DSP has to be driven by a vary fast clock and be able to handle many millions instruction per second.
There is a need to provide an improved modem that allows a relatively cost effective and fast modem.